package cn.iocoder.yudao.module.wine.controller.admin.supplyinfo.vo;

import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 供求信息分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class SupplyInfoPageReqVO extends PageParam {

    @Schema(description = "用户id", example = "9953")
    private Long userId;

    @Schema(description = "发布类型：1--出售，2--求购", example = "1")
    private Integer infoType;

    @Schema(description = "信息类型: Info_Type表主键ID", example = "31177")
    private Integer supplyTypeId;

    @Schema(description = "信息名称", example = "李四")
    private String infoName;

    @Schema(description = "简短标题")
    private String infoTitle;

    @Schema(description = "年份")
    private Integer showYear;

    @Schema(description = "香型", example = "1")
    private Integer fragranceType;

    @Schema(description = "度数")
    private Integer degree;

    @Schema(description = "容量")
    private Integer capacity;

    @Schema(description = "包装")
    private Integer packing;

    @Schema(description = "产地")
    private Integer productArea;

    @Schema(description = "区域id")
    private Integer areaId;

    @Schema(description = "多少瓶")
    private Integer quantity;

    @Schema(description = "多少件")
    private Integer packages;

    @Schema(description = "标签:多个“，”隔开:包损、到付等")
    private String labels;

    @Schema(description = "特殊标签")
    private String tags;

    @Schema(description = "单图")
    private String image;

    @Schema(description = "多图")
    private String images;

    @Schema(description = "单位：件/箱")
    private Integer unit;

    @Schema(description = "市场价格", example = "7309")
    private BigDecimal marketPrice;

    @Schema(description = "销售价格", example = "12883")
    private BigDecimal salePrice;

    @Schema(description = "描述", example = "你猜")
    private String description;

    @Schema(description = "状态枚举：1--添加，2--已审核，3--未审核，4--下架", example = "2")
    private Integer status;

    @Schema(description = "交易状态：1--正常交易，2--担保交易中", example = "1")
    private Integer tradeStatus;

    @Schema(description = "是否担责")
    private Integer isDuty;

    @Schema(description = "真实浏览数量", example = "20118")
    private Integer viewCount;

    @Schema(description = "显示浏览数量", example = "26691")
    private Integer showCount;

    @Schema(description = "排序")
    private Integer sort;

    @Schema(description = "是否置顶")
    private Integer isTop;

    @Schema(description = "是否热门")
    private Integer isHot;

    @Schema(description = "是否推荐")
    private Integer isRecommend;

    @Schema(description = "语言")
    private Integer language;

    @Schema(description = "统计标题名称", example = "统计标题名称")
    private String countName;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    @Schema(description = "是否参与统计")
    private Integer isCount;

    @Schema(description = "是否有配置")
    private Integer isConfig;
}
